/*************************************************
filename	: fmod_audio_interface.h
author		: Stefan lulham
desc		: Contains the fmod audio interface
*************************************************/
#ifndef D_FMOD_AUDIO_INTERFACE_H
#define D_FMOD_AUDIO_INTERFACE_H

#pragma comment(lib, "fmodex_vc.lib")

#include <string>
#include <lib\fmod\fmod.hpp>
#include <lib\fmod\fmod_errors.h>
#include <modules\audio\audio_interface.h>
#include <modules\audio\fmod\fmod_music.h>
#include <modules\audio\fmod\fmod_sound.h>

using namespace std;

namespace DelGE
{
	namespace Modules
	{
		namespace Audio
		{
			class FModAudioInterface : public AudioInterface
			{
			private:
				FMOD::System* pSystemHandle;

			public:
				FModAudioInterface();
				~FModAudioInterface();

				Sound* LoadSound(string sFilepath);
				Music* LoadMusic(string sFilepath);

				void UnloadSound(Sound* pAudioSound);
				void UnloadMusic(Music* pAudioMusic);

				void Update();
			};
		}
	}
}

#endif